core: Add ostree-types.h
authorColin Walters <walters@verbum.org>
Tue, 6 Mar 2012 13:45:43 +0000 (08:45 -0500)
committerColin Walters <walters@verbum.org>
Tue, 6 Mar 2012 16:59:06 +0000 (11:59 -0500)
This allows us to have circular references between the headers.

Makefile-libostree.am
src/libostree/ostree-mutable-tree.c
src/libostree/ostree-mutable-tree.h
src/libostree/ostree-repo-file.c
src/libostree/ostree-repo-file.h
src/libostree/ostree-repo.h
src/libostree/ostree-types.h [new file with mode: 0644]

index 20af32cfa95a45901a0c0fbdb08362fa98be6b41..f2b688fabb9e5ec1438423ca1bad4cad7cfe7b63 100644 (file)
@@ -30,6 +30,7 @@ libostree_la_SOURCES = src/libostree/ostree.h \
        src/libostree/ostree-repo-file.h \
        src/libostree/ostree-repo-file-enumerator.c \
        src/libostree/ostree-repo-file-enumerator.h \
+       src/libostree/ostree-types.h \
        $(NULL)
 if USE_LIBARCHIVE
 libostree_la_SOURCES += src/libostree/ostree-libarchive-input-stream.h \
index 5f63f113f510c48c5aed6f6a533366c133a035a0..37acc80d8ef947e3530ca06666ebacc59fe20423 100644 (file)
 #include "config.h"
 
 #include "ostree-mutable-tree.h"
+#include "otutil.h"
+#include "ostree-core.h"
 
-struct _OstreeMutableTree
+struct OstreeMutableTree
 {
   GObject parent_instance;
 
index e47964d137cd1b299551eebbef5a215d1fe96811..643c6fb9b29494e08c3043f7577dc614056d8704 100644 (file)
@@ -23,7 +23,7 @@
 #ifndef _OSTREE_MUTABLE_TREE
 #define _OSTREE_MUTABLE_TREE
 
-#include "otutil.h"
+#include "ostree-types.h"
 
 G_BEGIN_DECLS
 
@@ -34,15 +34,14 @@ G_BEGIN_DECLS
 #define OSTREE_IS_MUTABLE_TREE_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), OSTREE_TYPE_MUTABLE_TREE))
 #define OSTREE_MUTABLE_TREE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OSTREE_TYPE_MUTABLE_TREE, OstreeMutableTreeClass))
 
-typedef struct _OstreeMutableTree        OstreeMutableTree;
-typedef struct _OstreeMutableTreeClass   OstreeMutableTreeClass;
+typedef struct OstreeMutableTreeClass   OstreeMutableTreeClass;
 
 typedef struct {
   gboolean        in_files;
   GHashTableIter  iter;
 } OstreeMutableTreeIter;
 
-struct _OstreeMutableTreeClass
+struct OstreeMutableTreeClass
 {
   GObjectClass parent_class;
 };
index 625067ddeb1a431acc2c5bae35c1652aac95910a..24ec230130b45ff14245e75b564f3a1a1b3aaae3 100644 (file)
 #include "config.h"
 
 #include "ostree-repo-file-enumerator.h"
+#include "ostree-repo.h"
 
 static void ostree_repo_file_file_iface_init (GFileIface *iface);
 
-struct _OstreeRepoFile
+struct OstreeRepoFile
 {
   GObject parent_instance;
 
index 44dda4c3e447f0f269d83553c2341e3ef64d1984..aa6b4d45185826603db84bed481587ed0ce27868 100644 (file)
@@ -23,7 +23,7 @@
 #ifndef _OSTREE_REPO_FILE
 #define _OSTREE_REPO_FILE
 
-#include "ostree-repo.h"
+#include "ostree-types.h"
 
 G_BEGIN_DECLS
 
@@ -34,7 +34,6 @@ G_BEGIN_DECLS
 #define OSTREE_IS_REPO_FILE_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), OSTREE_TYPE_REPO_FILE))
 #define OSTREE_REPO_FILE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OSTREE_TYPE_REPO_FILE, OstreeRepoFileClass))
 
-typedef struct _OstreeRepoFile        OstreeRepoFile;
 typedef struct _OstreeRepoFileClass   OstreeRepoFileClass;
 
 struct _OstreeRepoFileClass
index ca1fecf1f1ff11f85aa8f0ef990f16409351382c..002b02e965c343d54c8c4224ee46191d82b1acde 100644 (file)
@@ -24,7 +24,7 @@
 #define _OSTREE_REPO
 
 #include "ostree-core.h"
-#include "ostree-mutable-tree.h"
+#include "ostree-types.h"
 
 G_BEGIN_DECLS
 
@@ -40,9 +40,9 @@ G_BEGIN_DECLS
 #define OSTREE_REPO_GET_CLASS(obj) \
   (G_TYPE_INSTANCE_GET_CLASS ((obj), OSTREE_TYPE_REPO, OstreeRepoClass))
 
-typedef struct {
+struct OstreeRepo {
   GObject parent;
-} OstreeRepo;
+};
 
 typedef struct {
   GObjectClass parent_class;
diff --git a/src/libostree/ostree-types.h b/src/libostree/ostree-types.h
new file mode 100644 (file)
index 0000000..af1ae0d
--- /dev/null
@@ -0,0 +1,39 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*-
+ *
+ * Copyright (C) 2011 Colin Walters <walters@verbum.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ * Author: Colin Walters <walters@verbum.org>
+ */
+
+#ifndef _OSTREE_TYPES
+#define _OSTREE_TYPES
+
+#include <gio/gio.h>
+
+G_BEGIN_DECLS
+
+struct OstreeRepo;
+typedef struct OstreeRepo OstreeRepo;
+struct OstreeMutableTree;
+typedef struct OstreeMutableTree OstreeMutableTree;
+struct OstreeRepoFile;
+typedef struct OstreeRepoFile OstreeRepoFile;
+
+G_END_DECLS
+
+#endif